Implementing multistart version of theta_est using multiple sampling methods#3575
Implementing multistart version of theta_est using multiple sampling methods#3575sscini wants to merge 60 commits into
Conversation
|
@djlaky @adowling2 Please provide early feedback. |
|
Dynamic saving using flush, add. |
adowling2
left a comment
There was a problem hiding this comment.
Notes from our in-person discussion/informal code review
|
Extend existing tests for parmest to include multistart, add. |
|
Models provided need to include bounds, add exception |
adowling2
left a comment
There was a problem hiding this comment.
Here are some more comments for you to consider are you continue to refine this.
| upper_bound = np.array([parmest_model.find_component(name).ub for name in theta_names]) | ||
| # Check if the lower and upper bounds are defined | ||
| if np.any(np.isnan(lower_bound)) or np.any(np.isnan(upper_bound)): | ||
| raise ValueError( |
There was a problem hiding this comment.
You probably already know this, but you will need to check all the errors are raised when expected.
|
Notes for 02/24/26 development meeting:
|
|
Now that _Q_opt has been finalized and merged, going to revisit this, make adjustments as needed from final _Q_opt and regularization revisions, and then will make a regular PR. |
Fixes # .
Summary/Motivation:
Currently, the optimization is only done from a single initial value. This implementation adds the ability to specify multiple initial values using selected sampling techniques: from a random uniform distribution, using Latin Hypercube Sampling, or using Sobol Quasi-Monte Carlo sampling.
Changes proposed in this PR:
TODO before converting from draft:
Legal Acknowledgement
By contributing to this software project, I have read the contribution guide and agree to the following terms and conditions for my contribution: